#ifndef __RADIOSITY_PANEL_H__
#define __RADIOSITY_PANEL_H__

#include <QWidget>
#include <QSpinBox>
#include <QPushButton>
#include <QCheckBox>

#include "radiosity.h"

namespace Ui {

class Radiosity_Panel : public QWidget {
	
	Q_OBJECT
public:
	Radiosity_Panel(QWidget* = 0);
	~Radiosity_Panel(void);
	
	void set_radiosity(t2c2::Radiosity*);
	t2c2::Radiosity* get_radiosity(void) const;
public slots:
	signals:
		void radiosity_done(void);	
private slots:
	void samples_changed(int);
	void solving_times_changed(int);
	void shadow_toggled(int);
	void calculate_activated(void);
private:
	t2c2::Radiosity* radiosity;
	unsigned int samples;
	
	QPushButton* calculate_button;
	QSpinBox* samples_spinbox;
	QSpinBox* solving_times_spinbox;
	QCheckBox* shadow_checkbox;
};

}

#endif
